package com.hb.core.pojo.project.deal.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.hb.core.pojo.Attachment;
import com.hb.core.pojo.Attachments;
import com.hb.core.pojo.parent.MPCommonEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;
import java.util.Date;

/**
 * 候选人公示实体类
 *
 * @author Lix1ang
 * @date 2021-12-24 13:40:48
 */
@Data
@TableName(value = "trade_bid_candidate")
@ApiModel(value = "trade_bid_candidate", description = "候选人公示实体类")
public class BidCandidate extends MPCommonEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "项目Id")
    private Long projectId;

    @ApiModelProperty(value = "公示名称")
    private String publicityName;

    @ApiModelProperty(value = "公示开始时间")
    @JsonFormat(shape= JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime publicityStartTime;

    @ApiModelProperty(value = "公示结束时间")
    @JsonFormat(shape= JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime  publicityEndTime;

    @ApiModelProperty(value = "公示类型(1:首次  2:变更)")
    private Integer publicityType;

    @ApiModelProperty(value = "发布媒介")
    private String publishMedium;

    @ApiModelProperty(value = "公示内容")
    private Attachments publicityContent;

    @ApiModelProperty(value = "公示内容(已签章)")
    private Attachments publicityContentSignature;

    @ApiModelProperty(value = "未签章的pdf")
    private Attachments contentPdf;

    @ApiModelProperty(value = "是否推送招投标服务平台(1:是   2:否)")
    private Integer pushFlag;

    @ApiModelProperty(value = "附件")
    private Attachments attachment;

    @ApiModelProperty(value = "备注")
    private String note;

    @ApiModelProperty(value = "状态(1:保存  2:签章  3:发布  4:撤回)")
    private Integer status;

    @ApiModelProperty(value = "公告内容")
    private String noticeContent;

    @ApiModelProperty(value = "公告发布时间")
    @JsonFormat(shape= JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime  deployTime;
}
